1. Field of Invention
The present invention relates generally to integrated circuits (ICs) such as field programmable gate arrays (FPGAs), and more particularly to structures and functionalities in a dedicated logic circuit in the field programmable gate arrays.
2. Description of Related Art
Field programmable gate arrays are often selected by design engineers to provide a flexible approach in programming and re-programming integrated circuits in order to accommodate a system specification, correct errors in the system, or make improvements to the system by reprogramming the FPGA. One conventional field programmable gate array architecture is implemented by using groups of look-up tables and programmable interconnect circuits. While the look-up tables and sequential elements are connected to each other, the connections to the groups of look-up tables typically originate from a switchbox located in each group of the look-up table. A hierarchical interconnect structure connects to elements in a look-up table through a switchbox, thereby serving as the primary source of connecting look-up tables from one logic block to another logic block. The inputs to the look-up tables are therefore generated primarily from the switchbox. The look-up table outputs are directly fed to other look-up tables as well as the elements within the look-up tables, but the connections to other look-up tables' inputs are made through the switchbox.
In another conventional structure, a majority of the inputs required for performing all functionality of configurable logic blocks are typically restricted to inputs associated with a particular configurable logic block, other than through the use of the switch box. The same is true for outputs of a particular configurable logic block which are restricted to within the configurable logic block other than through the use of the switch box.
A key building block in a programmable logic circuit is the design of a configurable logic block. It is therefore desirable to design a programmable logic structure employing configurable logic blocks with a set of logic functions to provide more programmable features.